package cn.edu.scau.cmi.ema.dao;

import java.util.Set;

import org.springframework.dao.DataAccessException;
import cn.edu.scau.cmi.ema.domain.*;
import cn.edu.scau.cmi.ema.domain.base.CmiPagination;
import java.math.BigDecimal;

public interface ExpireDAO extends JpaDao<Expire> {

	public Expire findExpireById(Integer id) throws DataAccessException;

	public Expire findExpireById(Integer id, int startResult, int maxRows) throws DataAccessException;

	public Set<Expire> findExpireByName(String name) throws DataAccessException;

	public Set<Expire> findExpireByName(String name, int startResult, int maxRows) throws DataAccessException;

	public Set<Expire> findExpireByNameContaining(String name_1) throws DataAccessException;

	public Set<Expire> findExpireByNameContaining(String name_1, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Expire> findExpireByQuantity(BigDecimal quantity) throws DataAccessException;

	public Set<Expire> findExpireByQuantity(BigDecimal quantity, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Expire> findExpireByDescription(String description) throws DataAccessException;

	public Set<Expire> findExpireByDescription(String description, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Expire> findExpireByDescriptionContaining(String description_1) throws DataAccessException;

	public Set<Expire> findExpireByDescriptionContaining(String description_1, int startResult, int maxRows)
			throws DataAccessException;

	public Expire findExpireByPrimaryKey(Integer id) throws DataAccessException;

	public Expire findExpireByPrimaryKey(Integer id, int startResult, int maxRows) throws DataAccessException;

	public Set<Expire> findExpiresByIds(Set<Integer> ids) throws DataAccessException;

	public Set<Expire> findAllExpires() throws DataAccessException;

	public Set<Expire> findAllExpires(int startResult, int maxRows) throws DataAccessException;

	public Set<Expire> findExpiresByUnit(Integer unitId, int start, int max);

	public Set<Expire> findExpireByCompositeProperities(String sql, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Expire> findExpiresByDetachedCriteria(CmiPagination page) throws DataAccessException;

	public Expire findExpireByPhysicalPrimaryKey(BigDecimal quantity, Integer unitId) throws DataAccessException;

	public Expire findExpireByPhysicalPrimaryKey(BigDecimal quantity, Integer unitId, int startResult, int maxRows)
			throws DataAccessException;
}
